package com.ruoyi.system.api.service;

import com.ruoyi.system.api.ResponseWithData;
import com.ruoyi.system.api.domain.ReportInfo;
import com.ruoyi.system.api.domain.StHotAccountReport;
import java.util.List;
import java.util.Map;

/**
 * 【请填写功能名称】Service接口
 * 
 * @author ruoyi
 * @date 2020-03-06
 */
public interface IStHotAccountReportService 
{
    /**
     * 查询【请填写功能名称】
     * 
     * @param id 【请填写功能名称】ID
     * @return 【请填写功能名称】
     */
    public StHotAccountReport selectStHotAccountReportById(Long id);

    /**
     * 查询【请填写功能名称】列表
     * 
     * @param stHotAccountReport 【请填写功能名称】
     * @return 【请填写功能名称】集合
     */
    public List<StHotAccountReport> selectStHotAccountReportList(StHotAccountReport stHotAccountReport);

    /**
     * 新增【请填写功能名称】
     * 
     * @param stHotAccountReport 【请填写功能名称】
     * @return 结果
     */
    public int insertStHotAccountReport(StHotAccountReport stHotAccountReport);

    /**
     * 修改【请填写功能名称】
     * 
     * @param stHotAccountReport 【请填写功能名称】
     * @return 结果
     */
    public int updateStHotAccountReport(StHotAccountReport stHotAccountReport);

    /**
     * 批量删除【请填写功能名称】
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteStHotAccountReportByIds(String ids);

    /**
     * 删除【请填写功能名称】信息
     * 
     * @param id 【请填写功能名称】ID
     * @return 结果
     */
    public int deleteStHotAccountReportById(Long id);

    /**
     *  添加 Hot Account Report
     *
     * @param hotAccountReport
     * @return com.ruoyi.system.api.ResponseWithData<?>
     * @author yzg
     * @date 2020/3/7 1:38 下午
     */
    public ResponseWithData<?> addHoatAccountReport(StHotAccountReport hotAccountReport);

    /**
     *  修改 Hot Account Report
     *
     * @param hotAccountReport
     * @return com.ruoyi.system.api.ResponseWithData<?>
     * @author yzg
     * @date 2020/3/7 1:39 下午
     */
    public ResponseWithData<?> updateHoatAccountReport(StHotAccountReport hotAccountReport);

    /**
     *  提交 Hot Account Report
     *
     * @param id
     * @return com.ruoyi.system.api.ResponseWithData<?>
     * @author yzg
     * @date 2020/3/7 1:39 下午
     */
    public ResponseWithData<?> hoatAccountReportSubmit(Long id, Long enginnerId);

    /**
     *  查看 Hot Account Report
     *
     * @param id
     * @return com.ruoyi.system.api.ResponseWithData<?>
     * @author yzg
     * @date 2020/3/7 1:40 下午
     */
    public ResponseWithData<?> detailHoatAccountReport(Long id);

    List<ReportInfo> selectStHotAccountReportList(String serviceNo, Long enginnerId) throws Exception;

    /**
     *  删除HotAccountReport报告
     *
     * @param id
     * @param enginnerId
     * @return com.ruoyi.system.api.ResponseWithData<?>
     * @author yzg
     * @date 2020/4/20 4:17 下午
     */
    ResponseWithData<?> delHotAccountReport(Long id, Long enginnerId) throws Exception;

    List<ReportInfo> selectStHotAccountReportList(ReportInfo reportInfo);

    ResponseWithData<?> getStHotAccountReportList(Map map);
}
